// 自定义响应式函数
function reactive(obj, key, value) {
    Object.defineProperty(data, key, {
        get() {
            console.log(`访问了${key}属性`)
            return value
        },
        set(val) {
            console.log(`将${key}由->${value}->设置成->${val}`)
            if (value !== val) {
                value = val
            }
        }
    })
}


const data = {
    name: '杨英承',
    age: 27
}
Object.keys(data).forEach(key => reactive(data, key, data[key]))
//
// console.log(data.name)
// // 访问了name属性
// data.name = 'yangyingcheng' // 将name由->杨英承->设置成->yangyingcheng
// console.log(data.name)

// 弊端
data.like = '打游戏';
console.log(data.like)
data.like = '睡大觉';
console.log(data.like)
